import { reactive, ToRefs, toRefs } from "vue";

export interface GetState {
    [key: string]:ToRefs
}

export interface GetMethods {
    [key: string]:Function
}

/** 组件通用控制器 */
abstract class ComponentController {
    /** 子类必须定义state */
    abstract state;

    /** 子类必须实现getState */
    abstract getState():GetState;

    /** 子类必须实现getMethods */
    abstract getMethods():GetMethods;
}

export default ComponentController
